//apps rely on some named colors to be exported
// GTK NAMED COLORS
// ----------------
// use responsibly!

@use 'sass:color';
@use 'settings' as *;
@use 'functions' as *;
@use 'colors' as *;

// Sass thinks we're using the colors in the variables as strings and may shoot
// warning, it's innocuous and can be defeated by using "" + $var
// widget text/foreground color
@define-color theme_fg_color #{"" + $window_fg_color};

// text color for entries, views and content in general
@define-color theme_text_color #{"" + $view_fg_color};

// widget base background color
@define-color theme_bg_color #{"" + $window_bg_color};

// text widgets and the like base background color
@define-color theme_base_color #{"" + $view_bg_color};

// base background color of selections
@define-color theme_selected_bg_color #{"" + $accent_bg_color};

// text/foreground color of selections
@define-color theme_selected_fg_color #{"" + $accent_fg_color};

// base background color of insensitive widgets
@define-color insensitive_bg_color #{"" + $disabled_bg_color};

// text foreground color of insensitive widgets
@define-color insensitive_fg_color #{"" + $disabled_fg_color};

// insensitive text widgets and the like base background color
@define-color insensitive_base_color #{"" + $view_bg_color};

// widget text/foreground color on backdrop windows
@define-color theme_unfocused_fg_color #{"" + $backdrop_fg_color};

// text color for entries, views and content in general on backdrop windows
@define-color theme_unfocused_text_color #{"" + $view_fg_color};

// widget base background color on backdrop windows
@define-color theme_unfocused_bg_color #{"" + $backdrop_bg_color};

// text widgets and the like base background color on backdrop windows
@define-color theme_unfocused_base_color #{"" + $backdrop_base_color};

// base background color of selections on backdrop windows
@define-color theme_unfocused_selected_bg_color #{"" + $accent_bg_color};

// text/foreground color of selections on backdrop windows
@define-color theme_unfocused_selected_fg_color #{"" + $accent_fg_color};

// insensitive color on backdrop windows
@define-color unfocused_insensitive_color #{"" + $backdrop_disabled_color};

// widgets main borders color
@define-color borders #{"" + $borders_color};

// widgets main borders color on backdrop windows
@define-color unfocused_borders #{"" + $backdrop_borders_color};

// these are pretty self explicative
@define-color warning_color #{"" + $warning_color};
@define-color error_color #{"" + $error_color};
@define-color success_color #{"" + $success_color};
//@define-color destructive_color #{$destructive_color}

//WM

$_wm_highlight: if($variant=='light', $top_hilight, opacify(black,0));

// these colors are exported for the window manager and shouldn't be used in applications,
// read if you used those and something break with a version upgrade you're on your own...
@define-color wm_title shade(#{$window_fg_color}, 1.8);
@define-color wm_unfocused_title #{$backdrop_fg_color};
@define-color wm_highlight #{"" + $_wm_highlight};
@define-color wm_borders_edge #{"" + $borders_edge};

@define-color wm_bg_a shade(#{$window_bg_color}, 1.2);
@define-color wm_bg_b #{$window_bg_color};

@define-color wm_shadow alpha(black, 0.35);
@define-color wm_border alpha(black, 0.18);

@define-color wm_button_hover_color_a shade(#{$window_bg_color}, 1.3);
@define-color wm_button_hover_color_b #{$window_bg_color};
@define-color wm_button_active_color_a shade(#{$window_bg_color}, 0.85);
@define-color wm_button_active_color_b shade(#{$window_bg_color}, 0.89);
@define-color wm_button_active_color_c shade(#{$window_bg_color}, 0.9);

//FIXME this is really an API

// content view background such as thumbnails view in Photos or Boxes
@define-color content_view_bg #{"" + $view_bg_color};

// Very contrasty background for text views (@theme_text_color foreground)
@define-color text_view_bg #{"" + if($variant == 'light', $view_bg_color, gtkshade($view_bg_color,0.94))};
